package cn.broadsense.biz.vo;

import cn.broadsense.biz.domain.Channel3dData;
import cn.broadsense.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 点位编辑
 *
 * @author: pengxin
 * @create: 2024-03-27 11:38
 * @Version 1.0
 **/
@ApiModel("点位编辑")
@Data
public class ChannelVo implements Serializable {

    private static final long serialVersionUID = 5732952715646077086L;

    @ApiModelProperty("点位名称")
    @Excel(name = "点位名称")
    private String channelName;

    @ApiModelProperty("点位编码")
    @Excel(name = "点位编码")
    private String channelCode;

    /**
     * 摄像机类型（1-枪机 2- 球机 3-半球 ）
     */
    @ApiModelProperty("摄像机类型（1-枪机 2- 球机 3-半球 ）")
    @Excel(name = "摄像机类型", readConverterExp = "1=枪机,2=球机,3=半球", combo = "枪机,球机,半球")
    private String cameraType;

    /**
     * 协议
     */
    @ApiModelProperty("协议")
    @Excel(name = "协议")
    private String protocol;

    /**
     * 点位ip
     */
    @ApiModelProperty("点位ip")
    @Excel(name = "点位ip")
    private String ipAddress;

    /**
     * 部门id
     */
    @ApiModelProperty("部门id")
    @Excel(name = "部门id")
    private Long deptId;

    /**
     * 部门名称
     */
    @ApiModelProperty("部门名称")
    @Excel(name = "部门名称")
    private String deptName;

    /**
     * 阶段标识
     */
    @ApiModelProperty("阶段标识")
    @Excel(name = "阶段标识")
    private String stageTag;

    /**
     * 型号
     */
    @ApiModelProperty("型号")
    @Excel(name = "型号")
    private String model;

    /**
     * 像素
     */
    @ApiModelProperty("像素")
    @Excel(name = "像素")
    private String pixel;

    /**
     * 经度
     */
    @ApiModelProperty("经度")
    @Excel(name = "经度")
    private String gpsX;

    /**
     * 纬度
     */
    @ApiModelProperty("纬度")
    @Excel(name = "纬度")
    private String gpsY;

    /**
     * 安装地址
     */
    @ApiModelProperty("安装地址")
    @Excel(name = "安装地址")
    private String installAddress;

    /**
     * 功能应用
     */
    @ApiModelProperty("功能应用")
    @Excel(name = "功能应用")
    private String ability;

    /**
     * 立杆高度
     */
    @ApiModelProperty("立杆高度")
    @Excel(name = "立杆高度")
    private BigDecimal columnHeight;

    /**
     * 横臂长度
     */
    @ApiModelProperty("横臂长度")
    @Excel(name = "横臂长度")
    private BigDecimal columnLength;

    /**
     * 朝向
     */
    @ApiModelProperty("朝向")
    @Excel(name = "朝向")
    private String orientation;

    /**
     * 杆件编码
     */
    @ApiModelProperty("杆件编码")
    @Excel(name = "杆件编码")
    private String columnCode;


    /**
     * 数据来源 1=视频云平台 2=自主创建
     */
    @ApiModelProperty("数据来源 1=视频云平台 2=自主创建")
    private Integer dataSource;

    @ApiModelProperty("3D数据")
    private Channel3dData channel3dData;

    @ApiModelProperty("是否有立杆(1-是、2-否)")
    private Integer pole;

    @ApiModelProperty("立杆经度")
    private Double poleLng;

    @ApiModelProperty("立杆坐标纬度")
    private Double poleLat;
    @ApiModelProperty("立杆高度")
    private Integer poleHeight;

    @ApiModelProperty("自定义标签列表")

    private List<String> customTags;

}
